<?php
namespace app\home\controller;

use app\home\model\CommtypeModel;
use app\home\model\GoodsModel;
use app\home\model\CommonModel;
use app\home\model\MenusModel;
use think\Controller;
use think\Request;
use think\Cache;


class Cate extends Controller
{
    public function __construct(Request $request = null)
    {
        $result = $this->_getBid();
        if(!$result){
            $this->success('未登录', 'index/login');
        }
    }
    /**
     * 首页展示
     * @return \think\response\View
     *
     */

    public function index()
    {
        $list=CommonModel::instance()->get_usign();
        $url='https://umall.yonyoucloud.com/api/ProductClasses/getClassesWithChildren?appkey=U8359015312&token=b33f18ba6bbca8f37c0574c10f49c18bee7d420e&usign='.$list;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        // 执行后不直接打印出来
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

        curl_setopt($ch, CURLOPT_HEADER, false);

        // 跳过证书检查
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

        // 不从证书中检查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //执行并获取HTML文档内容
        $output = curl_exec($ch);
        //释放curl句柄
        curl_close($ch);
        $data=json_decode($output,1);
        $arr=$data['data'];
        return view('cate/index',['data'=>$arr]);
    }

    /*
     * 获取商品信息
     */
    public function get_goods(Request $request){
        $valuefrom=$request->get('valuefrom');
        if(empty($valuefrom)){
            $queryCondition=array(
            "queryCondition" =>array(
                "pagesize"=>50,
                "pageindex"=>1,
                )
            );
        }else{
            $queryCondition=array(
                "queryCondition" =>array(
                    "pagesize"=>50,
                    "pageindex"=>1,
                    "where"=>[
                        [
                        'fieldname'=>"cgoodsname",
                        "valuefrom"=>"$valuefrom"
                        ]
                    ],
                )
            );
        }


        ksort($queryCondition);
        $str='queryCondition';
        $list=CommonModel::instance()->createUSign($str,$queryCondition);
        $data=json_encode($queryCondition);
        $data=str_replace('"',"'",$data);
        $url="https://umall.yonyoucloud.com/api/Products/getProductList?token=b33f18ba6bbca8f37c0574c10f49c18bee7d420e&appkey=U8359015312&queryCondition=".$data."&usign=".$list;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        // 执行后不直接打印出来
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, false);
        // 跳过证书检查
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        // 不从证书中检查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //执行并获取HTML文档内容
        $output = curl_exec($ch);
        //释放curl句柄
        curl_close($ch);
        $data=json_decode($output,1);
        $arr=json_encode($data);
        $list=$data['data']['data'];
        $count=$data['data']['totalCount'];
        return view('cate/index_goods',['data'=>$list,'count'=>$count,'arr'=>$arr]);
        //显示获得的数据
    }
    /*
     * 添加商品
     */
    public function add_goods(){
        return view('cate/add_goods');
    }
    /*
     * 进行添加
     */
    public function insert(Request $request){
        $queryCondition=array(
            "products" =>array(
                "cCode"=>"",
                "cERPCode"=>"",
                "cName"=>"",

            )
        );
        ksort($queryCondition);
        $str='';
        $list=CommonModel::instance()->createUSign($str,$queryCondition);
        $data=json_encode($queryCondition);
        $data=str_replace('"',"'",$data);
        $url="https://umall.yonyoucloud.com/api/Products/addProductGeneral?token=b33f18ba6bbca8f37c0574c10f49c18bee7d420e&appkey=U8359015312&queryCondition=".$data."&usign=".$list;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        // 执行后不直接打印出来
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, false);
        // 跳过证书检查
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        // 不从证书中检查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //执行并获取HTML文档内容
        $output = curl_exec($ch);
        //释放curl句柄
        curl_close($ch);
        $data=json_decode($output,1);
        var_dump($data);die;
    }
    /*
     * 获取货品（SKU）ID
     */
    public function get_SKUId(){
        $istatus=0;
        $str='istatus';
        $list=CommonModel::instance()->createUSign($str,$istatus);
        $url="https://umall.yonyoucloud.com/api/ProductSkus/getSkus?token=b33f18ba6bbca8f37c0574c10f49c18bee7d420e&appkey=U8359015312&istatus=".$istatus."&usign=".$list;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        // 执行后不直接打印出来
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, false);
        // 跳过证书检查
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        // 不从证书中检查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //执行并获取HTML文档内容
        $output = curl_exec($ch);
        //释放curl句柄
        curl_close($ch);
        //显示获得的数据
        var_dump($output);die;
    }
    /*
     * 获取货品（SKU）信息
     */
    public function get_SKU(){
        $ids=1;
        $str='ids';
        $list=CommonModel::instance()->createUSign($str,$ids);
        $url="https://umall.yonyoucloud.com/api/ProductSkus/getSkusByIds?token=b33f18ba6bbca8f37c0574c10f49c18bee7d420e&appkey=U8359015312&ids=".$ids."&usign=".$list;
        var_dump($url);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$url);
        // 执行后不直接打印出来
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, false);
        // 跳过证书检查
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        // 不从证书中检查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        //执行并获取HTML文档内容
        $output = curl_exec($ch);
        //释放curl句柄
        curl_close($ch);
        //显示获得的数据
//        var_dump($output);die;
        return $output; // 返回数据
    }
    /*
     * 门店档案
     */
    public function get_store(Request $request){
        $url="http://yl.yonyouup.com/open/mm/store/query/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $name=$request->get('name');
        if(empty($name)){
            $inputs=array(
                "pager"=>["pageIndex"=>1,"pageSize"=>20]
            );//构造业务参数
        }else{
            $inputs=array(
                "conditions"=>[
                    ["name"=>"name","value1"=>"$name","type"=>"string","op"=>"like"]
                ],
                "pager"=>["pageIndex"=>1,"pageSize"=>20]
            );//构造业务参数
        }


        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常

        }
        $data=json_decode($output,1);
        $arr=$data['data'];
        curl_close($curl); // 关闭CURL会话
        return view('cate/index_store',['data'=>$arr]);
        //显示获得的数据
    }
    /*
     * 会员档案
     */
    public function get_user(Request $request){
        $url="http://yl.yonyouup.com/open/mm/member/query/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $value1=$request->get('value');
        if(empty($value1)){
            $inputs=array(
                "pager"=>["pageIndex"=>1,"pageSize"=>10000000,"totalPage"=>null,"totalCount"=>null]
            );//构造业务参数
        }else{
            $inputs=array(
                "conditions"=>[["name"=>"realname","value1"=>$value1,"type"=>"string","op"=>"like"]],
                "pager"=>["pageIndex"=>1,"pageSize"=>20,"totalPage"=>null,"totalCount"=>null],
            );//构造业务参数
        }

        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        $data=json_decode($output,1);
        $arr=$data['data'];
        curl_close($curl); // 关闭CURL会话
        return view('cate/index_user',['data'=>$arr]);
        //显示获得的数据
    }
    /*
     * 会员等级档案
     */
    public function get_userup()
    {
        $url="http://yl.yonyouup.com/open/mm/memberlevel/query/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $inputs=array(
        );//构造业务参数
        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常

        }
        $data=json_decode($output,1);

        $arr=$data['data'];
        curl_close($curl); // 关闭CURL会话
        //显示获得的数据
        return view('cate/index_userup',['data'=>$arr]);
    }
    /*
     * 注册会员
     */
    public function add_user(Request $request){
        $url="http://yl.yonyouup.com/open/mm/member/register/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $inputs=array(
        );//构造业务参数
        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常

        }
        curl_close($curl); // 关闭CURL会话
    }
    /**
     * 会员权益
     */
//    public function user_qy(){
//        $url="http://yl.yonyouup.com/open/mm/pointsrule/query/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
//        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
//        $inputs=array(
//        );//构造业务参数
//        $document=json_encode($inputs);//待签名原文
//        /*2、生成签名*/
//        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
//        //初始化
//        $curl = curl_init();// 启动一个CURL会话
//        // 设置HTTP头
//        curl_setopt($curl, CURLOPT_HEADER, 0);
//        curl_setopt($curl, CURLOPT_HTTPHEADER, [
//            'X-Authorization:'.$signature
//        ]);
//        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
//        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
//        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
//        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包
//
//        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求
//
//        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
//        $output = curl_exec($curl); // 执行操作
//        if (curl_errno($curl)) {
//            echo 'Errno'.curl_error($curl);//捕抓异常
//
//        }
//        var_dump($output);die;
//        curl_close($curl); // 关闭CURL会话
//    }
        /*
         * 会员卡卷
         */
    public function show_s(Request $request){
        $url="http://yl.yonyouup.com/open/mm/coupon/mycoupon/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $mid=$request->get('id');
        $inputs=array(
            "conditions"=>[
                    ["name"=>"mid","value1"=>$mid]
                ]
        );//构造业务参数
        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常
        }
        curl_close($curl); // 关闭CURL会话
        $data=json_decode($output,1);

        $arr=$data['data'];
        foreach ($arr as &$value){
            if($value['status']==0){
                $value['status']='未使用';
            }elseif ($value['status']==1){
                $value['status']='已使用';
            }elseif ($value['status']==-1){
                $value['status']='作废';
            }elseif ($value['status']==2){
                $value['status']=='过期';
            }
        }
        return view('cate/show',['data'=>$arr]);
    }
    /*
     * 会员储值
     */
    public function show(Request $request){
        $url="http://yl.yonyouup.com/open/mm/storage/getactivitylist/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $mid=$request->get('id');
        $inputs=array(
           "mid"=>"$mid"
        );//构造业务参数
        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常
        }
        curl_close($curl); // 关闭CURL会话
        $data=json_decode($output,1);
        if($data['flag']==2){
            return $this->error($data['errormsg']);
        }else{
            $data=$data['data'];
        }
        return view('cate/show_s',['data'=>$data]);
    }
    /*
     * 优惠券列表
     */
    public function get_coupon(Request $request){
        $url="http://yl.yonyouup.com/open/mm/coupon/query/v1?access_token=FfgCitv8rhNXQmUkKbEq4HMpIcuBZDYd5s1y3eJxj6RnTVPG";
        $secret='Gk6jZnwRg3b5yQNdScT7F2JsvmA4WDiheMrYqtUVExPau8IXpzHCBfK1';
        $value1=$request->get('coupon');
        if(!empty($value1)){
            $inputs=array(
                "conditions"=>[["name"=>"title","value1"=>$value1,"type"=>"string","op"=>"like"]],
                "pager"=>["pageIndex"=>1,"pageSize"=>10000000,"totalPage"=>null,"totalCount"=>null]
            );//构造业务参数
        }else{
            $inputs=array(
                "pager"=>["pageIndex"=>1,"pageSize"=>10000000,"totalPage"=>null,"totalCount"=>null]
            );//构造业务参数
        }

        $document=json_encode($inputs);//待签名原文
        /*2、生成签名*/
        $signature=hash_hmac( "sha256", utf8_encode($document), $secret);//用HmacSHA256生成签名
        //初始化
        $curl = curl_init();// 启动一个CURL会话
        // 设置HTTP头
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'X-Authorization:'.$signature
        ]);
        curl_setopt($curl, CURLOPT_URL, $url);         // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_POSTFIELDS, $document);		// Post提交的数据包

        curl_setopt($curl, CURLOPT_POST, 1);		// 发送一个常规的Post请求

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 获取的信息以文件流的形式返回
        $output = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常
        }
        curl_close($curl); // 关闭CURL会话

        $data=json_decode($output,1);
        if($data['flag']==2){
            return $this->error($data['errormsg']);
        }else{
            $data=$data['data'];
        }
        return view('cate/coupon',['data'=>$data]);
    }
}
